﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;
using DataAccess;

namespace QLDSVCNTT_Nhom1
{
    public partial class frmQuanLyMonHoc : Form
    {
        public frmQuanLyMonHoc()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            List<MonHoc> list = MonHoc.All();
            LoadMonHoc(list);
        }

        private void btnLoad_Click(object sender, EventArgs e)
        {
            List<MonHoc> list = MonHoc.All();
            LoadMonHoc(list);
        }

        private void btnThem_Click(object sender, EventArgs e)
        {
            MonHoc data = new MonHoc();
            data.MaMH = CType.Tostring(txtMaMH.Text);
            data.TenMH = CType.Tostring(txtTenMH.Text);
            data.SoTC = CType.ToInt32(txtSoTC.Text);
            if (txtMaMH.Text != "" && txtTenMH.Text != "" & txtSoTC.Text != "")
            {
                if (MonHoc.Them(data) != "")
                {
                    MessageBox.Show("Thêm môn học: " + data.TenMH + " thành công!", "Thông báo");
                    btnLoad.PerformClick();
                    ResetForm();

                }
                else MessageBox.Show("Thêm không thành công môn học: " + data.TenMH, "Thông báo");
                btnLoad.PerformClick();
            }
            else MessageBox.Show("Kiểm tra lại thông tin dữ liệu!!");
        }

        private void btnThoat_Click(object sender, EventArgs e)
        {
            this.Close();
        }

        //private void btnXoa_Click(object sender, EventArgs e)
        //{
        //    if (lvMonHoc.SelectedItems.Count > 0)
        //    {
        //        string ma = CType.Tostring(lvMonHoc.SelectedItems[0].SubItems[0].Text);
        //        if (MonHoc.Xoa(ma) != "")
        //        {
        //            MessageBox.Show("Đã xóa môn học có mã: " + ma + " !!", "Thông báo");
        //            btnLoad.PerformClick();
        //        }
        //        else MessageBox.Show("Không xóa được môn học có mã: " + ma);
        //    }
        //    else MessageBox.Show("Chọn môn học cần xóa !!");
        //}
        private void btnXoa_Click(object sender, EventArgs e)
        {
            try
            {
                if (lvMonHoc.SelectedItems.Count > 0)
                {
                    string ma = lvMonHoc.SelectedItems[0].SubItems[0].Text;
                    string ten = lvMonHoc.SelectedItems[0].SubItems[1].Text;
                    DialogResult dlg = MessageBox.Show("Bạn có chắc muốn xóa môn: " + ten, "Thong bao", MessageBoxButtons.YesNo);
                    if (dlg == DialogResult.Yes)
                    {
                        MonHoc.Xoa(ma);
                        MessageBox.Show("Đã xóa môn học có mã: " + ma + " !!", "Thông báo");
                        btnLoad.PerformClick();
                    }
                    else MessageBox.Show("Không xóa được môn học có mã: " + ma);
                }
                else MessageBox.Show("Chọn môn học cần xóa !!");
            }
            catch (System.Exception ex)
            {
                MessageBox.Show("Bạn không thể xóa môn học này!");
            }
        }

        private void BindListView(MonHoc data)
        {
            ListViewItem lvItem = new ListViewItem(data.MaMH.ToString());
            lvMonHoc.Items.Add(lvItem);
            lvItem.SubItems.Add(data.TenMH.ToString());
            lvItem.SubItems.Add(data.SoTC.ToString());
        }
        private void LoadMonHoc(List<MonHoc> list)
        {
            lvMonHoc.Items.Clear();
            foreach (MonHoc data in list)
                BindListView(data);
        }

        private void lvMonHoc_Click(object sender, EventArgs e)
        {
            ListViewItem item = lvMonHoc.SelectedItems[0];
            txtMaMH.Text = item.Text;
            txtTenMH.Text = item.SubItems[1].Text;
            txtSoTC.Text = item.SubItems[2].Text;
            btnXoa.Enabled = true;
            //btnThem.Enabled = false;
        }

        private void ResetForm()
        {
            txtTenMH.Text = "";
            txtMaMH.Text = "";
            txtSoTC.Text = "";
        }

    }
}
